import { APP_LANG, DEFAULT_LANG } from "@/config.js"
import Vue from "vue"
import langData from '@/locales/zh/index.js'
let types = Object.keys(langData) || []

// 国际化模块
import VueI18n from 'vue-i18n'
Vue.use(VueI18n)

if (!uni.getStorageSync(APP_LANG)) {
    // 设置默认语言
    uni.getSystemInfo({
        success: (res) => {
            uni.setStorageSync(APP_LANG, (res.language.indexOf('zh') > -1) ? DEFAULT_LANG : 'es')
        }
    })
}
// 后期新增语言包，请复制某一个语言包修改其中的文本字段
// zh中文简体语言包 es西班牙语言包
const langKeys = ['zh', 'es']
let messages = {}
langKeys.map(item => {
	messages[item] = require(`@/locales/${ item }/index.js`)
})
const i18n = new VueI18n({
    locale: uni.getStorageSync(APP_LANG) || DEFAULT_LANG, // 默认使用中文
    messages
})

Vue.prototype._i18n = i18n

Vue.prototype.$lang = function(){
	console.log('lang ==> ', uni.getStorageSync(APP_LANG) || DEFAULT_LANG)
    return i18n.messages[uni.getStorageSync(APP_LANG) || DEFAULT_LANG]
}

module.exports = {
	// 声明翻译模块
	types,
	i18n,
	Vue
}